package com.fulihui.information.api;

import org.near.servicesupport.result.BaseResult;
import org.near.servicesupport.result.TPageResult;
import org.near.servicesupport.result.TSingleResult;

import com.fulihui.information.dto.DislikeInfo;
import com.fulihui.information.dto.DislikeStat;
import com.fulihui.information.request.*;

/**
 * 
 * Created by LeeSon on 2017/1/10 0010.
 */
public interface DislikeService {
    /**
     * 内容举报接口
     * @param request {@link DislikeAddRequest}
     * @return {@link BaseResult}
     */
    BaseResult dislike(DislikeAddRequest request);

    /**
     * 状态修改接口
     * @param request {@link DislikeStatusRequest}
     * @return {@link BaseResult}
     */
    BaseResult modifyStatus(DislikeStatusRequest request);

    /**
     * 举报信息分页查询
     * @param request {@link DislikeQueryRequest}
     * @return {@link TPageResult} <{@link DislikeInfo}>
     */
    TPageResult<DislikeInfo> queryPage(DislikeQueryRequest request);

    /**
     * 举报信息详情
     * @param request {@link DislikeDetailRequest}
     * @return {@link TSingleResult} <{@link DislikeInfo}>
     */
    TSingleResult<DislikeInfo> detail(DislikeDetailRequest request);

    /**
     * 获取举报 总数 新增 待审
     * @param request {@link DislikeStatRequest}
     * @return {@link TSingleResult} <{@link DislikeStat}>
     */
    TSingleResult<DislikeStat> stat(DislikeStatRequest request);
}